package com.biubiu.biubiuexam.sql.entity;

import lombok.*;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import java.io.Serial;
import java.io.Serializable;


/**
 * 用户组，通过持久化引擎储存进 SQL 数据库
 */
@NoArgsConstructor
@RequiredArgsConstructor
@Entity
public class UserGroup implements Serializable {

    // 序列化 UID
    @Serial
    private static final long serialVersionUID = 1L;

    // 主键 ID ，自动生成
    @Id
    @GeneratedValue
    @Getter
    private Long id;

    // 用户组名字，不能为空
    @NonNull
    @Column(nullable = false)
    @Getter
    @Setter
    private String name;

    // 用户组权限，不能为空
    @NonNull
    @Column(nullable = false, length = 1024)
    @Getter
    @Setter
    private String permissions;

    // 用户组身份，不能为空
    @NonNull
    @Column(nullable = false)
    @Getter
    @Setter
    private String role;
}
